package com.tbit.main.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.tbit.main.pojo.AccountWeather;
import com.tbit.main.pojo.WeatherDate;
import com.tbit.main.pojo.Weatherhistory;

import java.util.List;
import java.util.Map;

/**
 * @Author: chen
 * @Description:
 * @Date: 创建于 14:05 2023/3/6
 */
public interface AccountWeatherService extends IService<AccountWeather> {

    /**
     * 分时获取天气详情
     *
     * @param accountId 区域id
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return
     */
    List<Weatherhistory> getHoursWeather(Integer accountId, String startTime, String endTime);

    /**
     * 按天获取天气详情
     *
     * @param accountId 区域id
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return
     */
    List<WeatherDate> getDaysWeather(Integer accountId, String startTime, String endTime);

    /**
     * 获取天气分布
     *
     * @param accountId 区域id
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return
     */
    Map<String, String> groupDaysWeather(Integer accountId, String startTime, String endTime);

    /**
     * 分组统计天气
     *
     * @param accountId 区域id
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return
     */
    List<Map<String, String>> groupByTime(Integer accountId, String startTime, String endTime);

    /**
     * 按月统计
     *
     * @param accountId 区域id
     * @param startTime 开始时间
     * @param endTime   结束时间
     * @return
     */
    List<Map<String, String>> groupByMonth(Integer accountId, String startTime, String endTime);
}
